在Scala
語言裡提供一個字串插值的機制,可以允許使用者在處理過的
字串字面量中嵌入引用的變數,舉例如下:
val name = "World"
println(s"Hello $name")
這裡s
置於字串前允許直接在這個字串中使用變數。
而$
符號置於name
前方,讓s插值器知道這個字串的這個位置可以插入變數值。
這段程式的輸出是
Hello World
s插值器
最常使用f插值器
允許使用者產生println格式的字串。
例如:
val bottles = 3.5f
val name = Tom
println(f"$name%s can drink $bottles%2.2f of beer per minute.")
f
在這裡是為了讓字串以某種格式輸出%s
是字串格式%2.2f
是浮點數格式,第一個2代表至少有兩個字元,第二個2代表輸出會到小數點第二位。
f插值器
使用時機:需要輸出特定的字串格式時raw插值器
與s插值器類似,不過它會忽略跳脫字元(escaped character)
println(raw"Hello \n World")
上面那一行會輸出Hello World
,而不是返回字符。
raw插值器
使用時機:當想要避免類似\n變成換行字元時那今天就先介紹到這邊